#include"vector.h"
void test1()
{
	hu::vector<int> v;
	v.push_back(1);
	v.push_back(1);
	v.push_back(1);
	v.push_back(1);
	v.push_back(1);
	v[2] = 3;
	v[4] = 5;
	for (auto e : v)
	{
		cout << e << endl;
	}
	printf("**********************\n");

	hu::vector<int> str(v);
	str.pop_back();
	for (auto e : str)
	{
		cout << e << endl;
	}
	printf("**********************\n");

	str = v;
	str.erase(str.begin()+3);
	for (auto e : str)
	{
		cout << e << endl;
	}
}

void test2()
{
	hu::vector<double> v;
	
	v.push_back(13.14);
	v.push_back(132);
	v.push_back(23.6);
	v.push_back(67.4);
	v.push_back(76.9);
	for (auto e : v)
	{
		cout << e <<' ';
	}
	cout << endl;

	v.erase(v.begin());
	v.erase(v.begin());
	v.erase(v.begin());
	for (auto e : v)
	{
		cout << e << ' ';
	}
	cout << endl;

	v[1] = 2356.3;
	for (auto e : v)
	{
		cout << e << ' ';
	}
	cout << endl;
}


void test3()
{
	hu::vector<float> F;
	F.resize(10);
	for (auto e : F)
	{
		cout << F.size()<<' ';
		cout << e << endl;
	}

	printf("      \n");
	F.insert(F.end(), 2222.3);
	hu::vector<float> f(F);

	for (auto e : F)
	{
		cout << F.size() << ' ';
		cout << e << endl;
	}

	F[4] = 23.1;
	F.erase(F.begin() + 6);
	for (auto e : F)
	{
		cout << F.size() << ' ';
		cout << e << endl;
	}
}

void test4()
{
	hu::vector<int> hv;
	for (int i = 0; i < 10; i++)
	{
		hv.push_back(i);
	}
	for (auto e : hv)
	{
		cout << e << endl;
	}
}

int main()
{
	test4();
	return 0;
}